Repository navigation
Conversation
|
Thanks for the contribution!
中文感谢你的贡献!
|
|
Generally most InferenceX submissions don't need to add changes to the infx package. On the off chance they do, generally the diff is small. Please prompt your agent to clean your PR to keep your diff to only necessary & minimal changes too. We have an increased code quality bar for changes to the infx package. 中文大多数 InferenceX 提交通常不需要修改 infx 包。即使确实需要,改动通常也很小。请让你的 agent 清理 PR,使改动只包含必要且最小的内容。infx 包的改动有更高的代码质量要求。 |
|
Claude finished @cquil11's task in 1m 2s —— View job Review of PR #3741
I found one blocking issue and posted it as an inline comment.
The other checks passed:
|
There was a problem hiding this comment.
Additional findings (outside the current diff — GitHub can't attach inline comments there):
-
🔴
inferencex-e2e/infx/launch/drivers/srt/lanes.py— New gb200-nv dsv4 'vllm' (llm-d) multi-node AgentX jobs never qualify for shared_run_root, so their srt-slurm checkout lands in the plain runner workspace instead of the Lustre shared-run-root. check_request (lanes.py:69) now lets FRAMEWORK=vllm dsv4 jobs onto this lane, but shared_run_root's Matches at lines 82-83 only list frameworks=any_of("dynamo-vllm") and dynamo-sglang+agentic, so shared stays False in run_multinode (srt/init.py:134) and compute_workspace (checkout.py:195) skips staging a node-visible copy. If GITHUB_WORKSPACE isn't visible to the extra GB200 compute nodes a job allocates, the worker nodes can't find the installed venv/checkout and the job fails at startup. Fix: add a dsv4+frameworks=any_of("vllm") (agentic) Match to gb200-nv's shared_run_root tuple alongside the existing dynamo-vllm/dynamo-sglang rows.Why this was flagged
Trigger: a multinode AgentX launch with MODEL_PREFIX=dsv4, FRAMEWORK=vllm on cluster gb200-nv (the new agg-llm-d.yaml/disagg-llm-d.yaml recipes added in configs/nvidia-master.yaml, e.g. dsv4-fp4-gb200-vllm-llm-d-agentic-mtp-disagg using 2P-DEP8/1D-DEP16 over 8 nodes). lanes.py:69 now accepts framework 'vllm' for gb200-nv, but the shared_run_root Matches at lanes.py:82-83 require frameworks dynamo-vllm or dynamo-sglang exactly, so Match.call (policy.py:42) returns False for 'vllm'. run_multinode computes shared=False (srt/init.py:134), so checkout_dir (checkout.py:52) places the checkout under run.workspace rather than runners.yaml's gb200-nv shared-run-root (/mnt/lustre01/users-public/sa-shared/gha-runs, line 721). The existing dsv4+dynamo-vllm/dynamo-sglang rows were added specifically because this same cluster+model combo at multi-node scale needed the Lustre root; nothing in the new code gives 'vllm' that same treatment.
Verification: The new dsv4-fp4-gb200-vllm-llm-d-agentic-mtp-disagg/agg jobs (nvidia-master.yaml, framework: vllm, runner: cluster:gb200-nv) are admitted to the gb200-nv SRT_MULTI lane because lanes.py:69 added "vllm" to frameworks. shared is computed at srt/init.py:134, and gb200-nv's shared_run_root matches (lanes.py:81-83) cover only dynamo-vllm and dynamo-sglang+agentic, not vllm, so shared=False.
|
View unofficial run (performance): https://inferencex.semianalysis.com/inference?unofficialRun=38275856282 View unofficial run (accuracy): https://inferencex.semianalysis.com/evaluation?unofficialRun=38275856282 |
Port #2719's llm-d submission to srt-slurm's llm-d frontend: disagg 1P1D DEP8/DEP8 and 2P1D DEP8/DEP16 with Mooncake on prefill, and agg TP8, DEP8, and DEP8 with Mooncake. Drop the MiniMax-M3 smoke keys. Co-authored-by: Ilya Markov <markovilya197@gmail.com> Signed-off-by: Cam Quilici <cjquilici@gmail.com>
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
ec5ed23 to
67c1918
Compare
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
… timeout Signed-off-by: Cam Quilici <cjquilici@gmail.com>
… test/dnm-llm-d # Conflicts: # inferencex-e2e/perf-changelog.yaml
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
… 1007 nightly / DSv4-Pro ATOM AgentX 改用 MegaMoE DEP 并在 1007 nightly 启用 LMCache MP (#3819) * perf(amd): DSv4-Pro ATOM AgentX on MegaMoE DEP with an LMCache MP tier on the 1007 nightly Move dsv4-fp4-mi355x-atom-agentic-mtp to rocm/atom-dev:nightly_202610071700 (ATOM 0.1.7.dev65+ga526f0d55). C64 and C128 switch from RCCL expert parallelism to MegaMoE with DP pad-row masking and a fixed-slot decode instance; C128 adds prefill-only EPLB that stops after its warmup rebalances. C256 and the new C384 add ATOM's lmcache_mp CPU KV tier, served by one LMCache server per node that the new dsv4-atom-lmcache-mp-server.sh setup script starts from the LMCache build in the image. C48 and C96 keep RCCL. 将 dsv4-fp4-mi355x-atom-agentic-mtp 更新到 rocm/atom-dev:nightly_202610071700 (ATOM 0.1.7.dev65+ga526f0d55)。C64、C128 从 RCCL 专家并行改为 MegaMoE, 启用 DP pad 行掩码和 fixed-slot decode 实例;C128 增加只按 prefill 统计的 EPLB,warmup 内重平衡后停止。C256 和新增的 C384 增加 ATOM 的 lmcache_mp CPU KV 层,由新的 dsv4-atom-lmcache-mp-server.sh setup 脚本用镜像自带的 LMCache 在每个节点启动一个 LMCache server。C48、C96 保持 RCCL。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: yihonglie <hyi@amd.com> * chore: link the dsv4 ATOM AgentX changelog entry to #3819 将 dsv4 ATOM AgentX 的 perf-changelog 条目链接到 #3819。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: yihonglie <hyi@amd.com> * fix(dsv4-atom): escape braces in the lmcache_mp extra-config env srtctl expands {node}/{node_id} in worker env values with str.format_map, which parsed the JSON in ATOM_KV_OFFLOAD_EXTRA_CONFIG as a format field and failed at worker start ("'str' object has no attribute 'mp'"). Double the braces so the expanded value is the original JSON. srtctl 用 str.format_map 展开 worker env 里的 {node}/{node_id}, ATOM_KV_OFFLOAD_EXTRA_CONFIG 中的 JSON 被当成格式字段解析,worker 启动即报错。 花括号加倍后展开结果即原 JSON(已用 srtctl load_config + 同样的 format_map 验证 c256/c384)。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: yihonglie <hyi@amd.com> * perf(dsv4-atom): run C48 and C96 on MegaMoE with EPLB C48 and C96 move from RCCL expert parallelism to the MegaMoE backend with EPLB, like the other DEP points; their admission, prefill-decode interval and cudagraph sizes stay as before. C48、C96 从 RCCL 专家并行改为 MegaMoE 后端并开启 EPLB,与其他 DEP 点一致; max-num-seqs、prefill 间隔和 cudagraph 档位不变。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: yihonglie <hyi@amd.com> * chore(dsv4-atom): describe the final DEP and LMCache config in the changelog The entry still described the first revision of the PR. It now lists the MegaMoE move for C48 to C128 (EPLB everywhere except C64), the max-num-seqs cap of 128 from C128 up, the lmcache_mp tier at C256 and the new C384 with its server size and LMCache version, and that C1 to C16 are unchanged. changelog 条目仍描述的是 PR 的第一版。现改为最终配置:C48 至 C128 从 RCCL 专家并行改用 MegaMoE(除 C64 外均开启 EPLB);C128 起 max-num-seqs 上限为 128;C256 与新增的 C384 使用 lmcache_mp CPU KV 层,并注明 server 容量和 LMCache 版本;C1 至 C16 不变。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: seungrokj <seungrok.jung@amd.com> * perf(dsv4-atom): start the C256/C384 LMCache server with srtctl's lmcache-server service Replace the custom setup script with srtctl's lmcache-server service, which runs `lmcache server` from the LMCache build in the ATOM image on port 8750 with the same server arguments; ATOM's lmcache_mp tier dials that port. C256/C384 的 LMCache server 改由 srtctl 自带的 lmcache-server 服务启动(使用镜像 自带的 LMCache,端口 8750,server 参数不变),删除自定义 setup 脚本。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: yihonglie <hyi@amd.com> * Revise performance metrics in perf-changelog.yaml Updated performance changelog with new metrics and configurations for various TP settings. * perf(amd): DSv4-Pro ATOM AgentX on MegaMoE DEP with LMCache MP on the 1007 nightly - Update the image from rocm/atom-dev:nightly_202609291501 to rocm/atom-dev:nightly_202610071700 (digest sha256:bb3912c372dda0c82fc6831afdd76e366a372d5e9fe223373499db63b06cce65). - Move the C48, C64, C96 and C128 DEP points from RCCL expert parallelism to ATOM's MegaMoE backend (all2all-backend high-throughput, moe-backend mega), with EPLB at every point except C64. - Cap max-num-seqs at 128 from C128 up (C128 was 256, C256 was 512); C48, C64 and C96 keep admission at 2x CONC. - Run C256 and the new C384 on the same MegaMoE DEP setup with ATOM's lmcache_mp CPU KV tier: one LMCache server per node (1000 GB L1, LMCache 0.5.6.dev139+gf22dec28 as shipped in the image), started by srtctl's lmcache-server service, within a 1019 GB budget (dram-utilization 0.34). - C1 to C16 are unchanged. - No data-type or precision change to the DSpark draft: the bundled draft of deepseek-ai/DeepSeek-V4-Pro-0813 runs as shipped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Signed-off-by: yihonglie <hyi@amd.com> Signed-off-by: seungrokj <seungrok.jung@amd.com> Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Co-authored-by: seungrokj <144636725+seungrokj@users.noreply.github.com> Co-authored-by: seungrokj <seungrok.jung@amd.com>
…lash ATOM AgentX 更新至 1010 nightly (#3901) * feat(amd): bump DSv4.1-Flash ATOM AgentX to 1010 nightly Update dsv41flash-fp4-mi355x-atom-agentic-dspark from rocm/atom-dev:nightly_202610070333 to nightly_202610100929 (ATOM 0.1.8.dev14+g73defd9b8). Recipe, points and server settings are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore: set perf-changelog pr-link to #3901 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * feat(amd): bump DSv4.1-Flash ATOM AgentX to 1010 nightly - Update the image from rocm/atom-dev:nightly_202610070333 to nightly_202610100929 (digest sha256:cc60ba06b28050a7fdec71e21f1853c782a9ec8850f031e84ebf0e49f3180974; ATOM 0.1.8.dev14+g73defd9b8, ROCm 7.2.4) and update model.container to match. The recipe, points and server settings are unchanged; upstream recipes/DeepSeek-V4.1-Flash-Agentic.md is unchanged between 7fc0926c6 and 73defd9b8. - ROCm/ATOM#2507 turns decoder SWA bounded replay on by default for DeepSeek-V4.1: a prefill runs layers 21..39 on each request's last 133 rows only, the same approximation as SGLang's --enable-decoder-swa-bounded-replay. Upstream reports +10.7% / +22.7% / +38.1% P90 interactivity at TP2 c16 / c32 / c64 on this AgentX workload, with no GSM8K or long-context retrieval change beyond noise. - ROCm/ATOM#2512 samples the DSpark Markov block from each TP rank's vocab shard instead of all-gathering the full logits (bit-identical ids; draft head 657 -> 302 us per decode step at TP2 c32). ROCm/ATOM#2513 packs the FP4 index logits by row visibility and moves BF16 decode to the two-source paged kernel (needs ROCm/aiter#6334). ROCm/ATOM#2495 fixes the FP4 sparse indexer output contract. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: seungrokj <seungrok.jung@amd.com> Co-authored-by: Bryan Shan <58582368+Oseltamivir@users.noreply.github.com>
…D][MI355X] DSv4.1 Flash:启用 vLLM mono decode 内核(镜像待定) (#3690) * perf(dsv41flash): repin MI355X to the 2026-10-06 ROCm 10.0 nightly Repin the MI355X DeepSeek-V4.1-Flash DSpark recipe to nightly-rocm100-21d93d0d and retune the ladder around it. - Leave VLLM_ROCM_USE_AITER_MOE_A4W4_DSV4 unset. The a4w4 opt-in faults during graph capture at TP=2; all nine TP=2 points failed and all nine TP=4 points passed in run 37424787697. vllm-project/vllm#60273 tracks the fix, so the experts stay on the generic AITER CK a8w4 selector. - Enable VLLM_ROCM_QUICK_REDUCE_QUANTIZATION=INT4 so tensor-parallel all-reduces above the quick-reduce size threshold use the INT4 codec. - Hold both TP rows at concurrency 64. Run 37510565585 measured TP=2 c128 at 150,683 tok/s/chip against 151,896 at c64 with prompt tokens within 0.5%, so the extra concurrency bought real prefill rather than scored tokens. - Set VLLM_SHARED_EXPERTS_STREAM_TOKEN_THRESHOLD=1024. Upstream caps the shared-expert overlap at 256 tokens, which predates speculative decoding: five DSpark drafts make a decode step CONC x 6 tokens, so c64 submits 384 and the overlap never engages above c42. 1024 covers the ladder and matches the ATOM default, and stays below the prefill chunk so memory profiling never takes the overlap. - Restore the upstream 16384 prefill chunk at TP2 c64, making the chunk uniform across all 14 points. That point had capped it at 8192 to buy KV room, but the room was taken by a profiling bug rather than by the chunk: the ROCm paged MXFP4 indexer sizes its decode logits workspace as (rows, max-model-len), and with no ambient vLLM config in scope the row count fell back to the batched-token count, so at this recipe's 1M context the reservation scaled linearly with the chunk. vllm-project/vllm#58014 bounds rows by max-num-seqs x (1 + 5 drafts), and the repinned image carries that fix. Rebased onto main: the configuration-procedure guides this branch had edited were removed by #3789, so those edits are dropped. Co-authored-by: Cursor Agent <cursoragent@cursor.com> * perf(dsv41flash): enable mono decode on MI355X; image TBD - Set VLLM_ROCM_MONO_DECODE=1 (vllm-project/vllm#60397): two persistent launches a layer for decode steps of up to 48 rows; larger steps take the regular path. - Image TBD until the first ROCm 10.0 nightly with #60397 is published. - Drop the a4w4 notes and shorten the comments and the changelog entry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(dsv41flash): drop the shared-expert stream threshold Keep the upstream default for simplicity. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(dsv41flash): pin the ROCm 10.0 nightly that carries mono decode Replace the TBD placeholder with nightly-rocm100-7d0b4e57, the first ROCm 10.0 nightly built after vllm-project/vllm#60397 merged, so the VLLM_ROCM_MONO_DECODE=1 setting on this recipe has kernels to run. 将 TBD 占位符替换为 nightly-rocm100-7d0b4e57,这是 vllm-project/vllm#60397 合并后构建的首个 ROCm 10.0 nightly,使本 recipe 中的 VLLM_ROCM_MONO_DECODE=1 设置有对应的 kernel 可用。 Co-authored-by: Cursor <cursoragent@cursor.com> * docs(dsv41flash): align MI355X vLLM changelog entry with the #3690 diff - Update the image from nightly-rocm100-ac9126e58aa7bbab1856ba6593ba4d5003fea516 to nightly-rocm100-7d0b4e57aac4c4323225b0eee9ae960ce75ffffe, the first ROCm 10.0 nightly with the DeepSeek-V4.1 mono decode kernels of vllm-project/vllm#60397, and update model.container to match. The image also brings vllm-project/vllm#59685, #56638, #60159 and #60389. - Enable the mono decode kernels (VLLM_ROCM_MONO_DECODE=1) at TP2 and TP4: a decode step of up to 48 rows, i.e. concurrency 1-8 with five DSpark drafts, runs each backbone layer as two persistent launches (30 of 40 layers whole, the other 10 the FFN launch only). Larger steps take the regular path, so C16-C64 are expected unchanged. - Enable VLLM_ROCM_QUICK_REDUCE_QUANTIZATION=INT4 (vllm-project/recipes#1061) for tensor-parallel all-reduces above the quick-reduce size threshold. - Restore --max-num-batched-tokens 16384 at TP2 c64: vllm-project/vllm#58014 removed the profiling over-reservation the 8192 cap worked around. The prefill chunk is now 16384 at every point and the ladder stays at concurrency 1-64. - No data-type or precision change to the DSpark draft: vllm-project/vllm#60397 skips the draft layers (layer id >= num_hidden_layers), so the bundled DSpark draft of deepseek-ai/DeepSeek-V4.1-Flash runs on vLLM's regular path as shipped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: seungrokj <144636725+seungrokj@users.noreply.github.com> Co-authored-by: seungrokj <seungrok.jung@amd.com>
…weep / [AMD][MI355X] Kimi-K3 vLLM AgentX 更新镜像至 nightly 81198e97 并改为 dcp8 c1-c48 扫描 (#3833) * perf(amd): retune Kimi-K3 MI355X vLLM AgentX sweep to dcp8 c10-c16 and c44-c50 Move the mid band to dcp8 (c10/c12/c14/c16) and the throughput band to c44/c48/c50 with a 4-token DSpark draft, dropping the unused c8 and c70 variants. CUDA graphs capture every even size up to 2x CONC x (1 + drafts). Add stream-interval 10 and VLLM_ROCM_AITER_MLA_DCP_VERIFY=asm to the base recipe, and FP8 per-channel online quantization of linears to c1. 将中段改为 dcp8(c10/c12/c14/c16),吞吐段改为 c44/c48/c50 并使用 4 token DSpark 草稿,移除不再使用的 c8 与 c70 变体。CUDA graph 捕获不超过 2x CONC x (1 + drafts) 的所有偶数尺寸。基础配方新增 stream-interval 10 与 VLLM_ROCM_AITER_MLA_DCP_VERIFY=asm,c1 新增线性层 FP8 per-channel 在线量化。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore(amd): narrow Kimi-K3 MI355X vLLM AgentX sweep to c1, dcp8 c10 and dcp8 c48 Comment out the full band lists in amd-master.yaml and run one point per band: c1 (dcp1, GPU-resident), c10 and c48 (dcp8, DRAM offload). 在 amd-master.yaml 中注释掉完整的分段列表,每段只运行一个点:c1(dcp1, GPU 常驻)、c10 与 c48(dcp8,DRAM offload)。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore(amd): run only Kimi-K3 MI355X vLLM c1 with dcp8 Add override_tp8_c1_dcp8, the c1 variant with decode-context-parallel-size 8 over a2a, and narrow the amd-master.yaml sweep to that single c1 dcp8 point. 新增 override_tp8_c1_dcp8:在 c1 变体基础上使用 a2a 的 decode-context-parallel-size 8,并将 amd-master.yaml 扫描缩小为该 c1 dcp8 单点。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore(amd): run only Kimi-K3 MI355X vLLM dcp8 c48 Re-enable the dcp8 DRAM-offload c48 point and disable c1 dcp8 to reproduce the c48 NCCL watchdog hang. 仅运行 Kimi-K3 MI355X vLLM dcp8 c48:重新启用 dcp8 DRAM 卸载 c48 配置点, 禁用 c1 dcp8,以复现 c48 的 NCCL watchdog 挂起问题。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(amd): Kimi-K3 MI355X vLLM AgentX on nightly 81198e97 with dcp8 c1-c48 Move kimik3-fp4-mi355x-vllm-agentic-mtp and its recipe to the nightly-rocm100-81198e97 image and sweep dcp1 c1, dcp8 c1 (GPU-resident) and dcp8 DRAM-offload c4, c10-c16, c44, c48. Add override_tp8_c4_dcp8_simple and raise the c14/c16 DSpark draft from 3 to 4 tokens, with graph capture sized to 2 x CONC x (1 + drafts). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(amd): disable breakable CUDA graphs for Kimi-K3 MI355X vLLM c1/c4 Set VLLM_USE_BREAKABLE_CUDAGRAPH to 0 in override_tp8_c1, override_tp8_c1_dcp8, override_tp8_c4 and override_tp8_c4_dcp8_simple. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(amd): use FULL_AND_PIECEWISE on every Kimi-K3 MI355X vLLM point Switch c10/c12/c14/c16 from FULL to FULL_AND_PIECEWISE so all overrides request the same cudagraph mode, refresh the recipe comment, and add the perf-changelog entry for #3833. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * docs(amd): align Kimi-K3 MI355X vLLM changelog entry with the #3833 diff Correct the kimik3-fp4-mi355x-vllm-agentic-mtp perf-changelog entry: - Every point requests FULL_AND_PIECEWISE (the mid band was FULL) with breakable CUDA graphs off; without a torch.compile submodule vLLM overrides it to FULL_DECODE_ONLY, as the c1 and c14 server logs show. - Golden (synthetic) acceptance applies at every draft point in agentic runs, not only the throughput band; note the c14 draft length 3 -> 4. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * perf(amd): Kimi-K3 MI355X vLLM AgentX on nightly 81198e97 with dcp8 c1-c48 - Update the image from vllm/vllm-openai-rocm:nightly-rocm100-36768d1bfd39094681cdbc8cb37d4b31c0729c89 to vllm/vllm-openai-rocm:nightly-rocm100-81198e97ba7eee2a22540caaa756b7fdddcb4d93. - Sweep dcp1 concurrency 1 and dcp8 concurrency 1 GPU-resident, and dcp8 concurrency 4, 10, 12, 14, 16, 44 and 48 with the SimpleCPUOffloadConnector DRAM tier (224.875 GB/rank). This replaces dcp1 concurrency 1/4, dcp1 DRAM-offload concurrency 8-14 and dcp8 concurrency 44/48/70. The dcp8 points use the a2a DCP backend. - DSpark draft length per point: 7 at concurrency 1, 5 at 4, 4 at 10, 3 at 12, and 4 at 14, 16, 44 and 48 (concurrency 14 was 3). The throughput band (44, 48) previously had no speculative-config and now runs the 4-token DSpark draft. As at every draft point, agentic runs replace block rejection with the golden acceptance length for that draft length. - Admission is 2x concurrency. CUDA graphs capture every even size up to 2x concurrency x (1 + draft tokens), replacing the previous every-size lists (up to 8192 in the throughput band). - Every point requests cudagraph_mode FULL_AND_PIECEWISE (the mid band was FULL) with breakable CUDA graphs disabled (VLLM_USE_BREAKABLE_CUDAGRAPH=0, previously 1 at concurrency 1 and 4). The AMD Kimi-K3 model has no torch.compile submodule, so vLLM overrides the mode to FULL_DECODE_ONLY at load, as the concurrency 1 and 14 server logs show. - Add stream-interval 10 and VLLM_ROCM_AITER_MLA_DCP_VERIFY=asm, which routes DCP multi-token verify through the AITER ASM round-robin decode, to every point. - Concurrency 1 (dcp1 and dcp8) adds quantization-config linear fp8_per_channel: vLLM quantizes the target's linear layers to FP8 W8A8 at load, except kv_b_proj, in_proj_qkvgfab, f_b_proj, fused_qkv_a_proj, self_attn.g_proj and layer 0 mlp.down_proj, which stay BF16. The routed experts stay MXFP4. - No change to the Inferact/Kimi-K3-DSpark draft's precision: its model config takes the speculative config's own quantization (unset) and never receives quantization-config, and get_draft_quant_config() returns None for K3DSparkModel, so its weights stay BF16 and its KV cache stays fp8. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ps / [NVIDIA] GLM-5.2 NVFP4 B300 SGLang AgentX:调优 EAGLE 推测步数 (#3890) * [NVIDIA] GLM-5.2 NVFP4 B300 SGLang AgentX: tune EAGLE speculative steps / [NVIDIA] GLM-5.2 NVFP4 B300 SGLang AgentX:调优 EAGLE 推测步数 * Add PR link to perf changelog * Restore unrelated tilert pr-link placeholder in perf changelog Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com> Co-authored-by: Bryan Shan <58582368+Oseltamivir@users.noreply.github.com>
…l linker / 将 GB200 DeepSeek-V4-Pro AgentX 分离式配置切换到 Mooncake external linker (#3701) * perf(agentx): GB200 DSV4 SGLang disagg KV offload via Mooncake unified-cache external linker * config(agentx): record Mooncake as the GB200 DSV4 SGLang disagg KV offload backend * docs(changelog): GB200 DSV4 SGLang AgentX Mooncake KV offload * docs(changelog): link #3701 * perf(agentx): 8k-token prefill chunks per rank on the GB200 DSV4 DEP16 prefill recipes Raise chunked-prefill-size from 65536 to 131072 on the c256/c768/c1024/c1280 DEP16 prefill workers (4k to 8k tokens per DP rank) and lower prefill mem-fraction-static from 0.85 to 0.80; 8k chunks run out of GPU memory at 0.85. * docs(changelog): GB200 DSV4 agg key, DEP16 prefill chunks; English-only entry List dsv4-fp4-gb200-dynamo-sglang-agentic-agg so the sweep reruns the low-latency TP8 c1/c4 points, describe the 8k-token DEP16 prefill chunks, and drop the Chinese bullets now that new changelog entries must be English-only. * Revert "perf(agentx): 8k-token prefill chunks per rank on the GB200 DSV4 DEP16 prefill recipes" This reverts commit 28b5f47. * docs(changelog): drop the reverted DEP16 prefill chunk change from the GB200 DSV4 entry --------- Co-authored-by: weireweire <20922698+weireweire@users.noreply.github.com> Co-authored-by: Bryan Shan <58582368+Oseltamivir@users.noreply.github.com>
|
/stage-results 38029231836 |
|
@cquil11 staged run 38029231836: https://inferencemax-app-git-staging-semianalysisai.vercel.app/inference?i_dates=2026-10-10~r38029231836 This run remains available across future |
Match Sep 28 speculative policy on GB200 llm-d recipes (adaptive disagg/DEP8, golden AL only on agg TP8) and skip golden injection when adaptive is enabled. 在 GB200 llm-d AgentX 配方中恢复 9 月 28 日的投机策略(disagg/DEP8 自适应验证、 仅 agg TP8 使用黄金 AL),并在启用自适应时跳过黄金接受长度注入。
Signed-off-by: Cam Quilici <cjquilici@gmail.com>
Changes
frontend.type: llm-d, feat(frontends): add the llm-d router NVIDIA/srt-slurm#588), which the submodule includes as of v2.49.0 (chore: bump srt-slurm to v2.49.0 #3882). The standalone llm-d launcher is removed in chore: remove the standalone llm-d launcher #3883, which this PR is stacked on. Each DEP worker is onevllm servethat balances its DP ranks itself, so the EPP routes to the worker.